Loop on actual elfnote array size rather than depending on ELFNOTE_MAX
authorkfraser@localhost.localdomain <kfraser@localhost.localdomain>
Wed, 28 Feb 2007 09:44:59 +0000 (09:44 +0000)
committerkfraser@localhost.localdomain <kfraser@localhost.localdomain>
Wed, 28 Feb 2007 09:44:59 +0000 (09:44 +0000)
macro.
Signed-off-by: Keir Fraser <keir@xensource.com>
tools/python/xen/lowlevel/xc/xc.c

index db1dc4363365167c10583f5f5d40d870d13210cd..b3dbb20ed7b7272964ed83b1ff8acf19591ded94 100644 (file)
@@ -23,6 +23,8 @@
 #include <xen/hvm/hvm_info_table.h>
 #include <xen/hvm/params.h>
 
+#define ARRAY_SIZE(x) (sizeof(x) / sizeof((x)[0]))
+
 /* Needed for Python versions earlier than 2.3. */
 #ifndef PyMODINIT_FUNC
 #define PyMODINIT_FUNC DL_EXPORT(void)
@@ -419,10 +421,13 @@ static PyObject *pyxc_linux_build(XcObject *self,
        goto out;
     }
 
-    if (!(elfnote_dict = PyDict_New()))
+    if ( !(elfnote_dict = PyDict_New()) )
        goto out;
-    for (i = 0; i <= XEN_ELFNOTE_MAX; i++) {
-       switch (dom->parms.elf_notes[i].type) {
+    
+    for ( i = 0; i < ARRAY_SIZE(dom->parms.elf_notes); i++ )
+    {
+       switch ( dom->parms.elf_notes[i].type )
+        {
        case XEN_ENT_NONE:
            continue;
        case XEN_ENT_LONG: